/*
 * Salida.h
 *
 *  Created on: 02/10/2012
 */

#ifndef SALIDA_H_
#define SALIDA_H_

#include <iostream>
#include <signal.h>

#include "Estacionamiento.h"
#include "Constantes.h"
#include "Ticket.h"
#include "Utils.h"

using namespace std;

class Salida : public EventHandler {

private:

	int numeroSalida;
	int numeroEstacionamiento;
	bool salidaAbierta;
	Cola<MensajeTicket> colaSalida;
	Cola<MensajeTicket> colaEstacionamiento;

	void bloquearSeniales();
	void liberarLugar(Ticket);

public:

	Salida(int,int);
	int handleSignal(int);
	void inicializar();
	virtual ~Salida();
	void sacarAutos();

};

#endif /* SALIDA_H_ */
